﻿using BLL;
using DTO;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace HDT.GUI
{
    public partial class FrmEditThamSo : Form
    {
        public delegate void MyDelegate(int data);
        public MyDelegate SetThamSo;
        ThamSoDTO thamSo;

        public FrmEditThamSo()
        {
            InitializeComponent();
            thamSo = new ThamSoDTO();
        }

        public FrmEditThamSo(int p)
            : this()
        {
            try
            {
                thamSo = new ThamSoBLL().GetThamSo();
            }
            catch { }

            switch (p)
             {
                 case 1: SetTLUng();
                     break;
                 case 2: SetGTHD(); 
                     break;
                 case 3: SetSLNhap();
                     break;
                 case 4: SetSLTon();
                     break;
             }
        }

        private void SetTLUng()
        {
            txtName.Text = "Tỷ lệ ứng tối đa: (%)";
            numValue.Minimum = 1;
            numValue.Maximum = 100;
            numValue.Increment = 1;
            numValue.DecimalPlaces = 1;

            numValue.Value = (decimal) thamSo.TLUng * 100;
        }

        private void SetGTHD()
        {
            txtName.Text = "Giá trị tối đa của hóa đơn:";
            numValue.Minimum = 1000;
            numValue.Maximum = 1000000000;
            numValue.Increment = 10000; 
            numValue.DecimalPlaces = 0;

            numValue.Value = (decimal)thamSo.GTHD;
        }

        private void SetSLNhap()
        {
            txtName.Text = "Số lượng nhập tối đa:";
            numValue.Minimum = 1;
            numValue.Maximum = 10000;
            numValue.Increment = 10;
            numValue.DecimalPlaces = 0;

            numValue.Value = (decimal)thamSo.SLNhap;
        }

        private void SetSLTon()
        {
            txtName.Text = "Số lượng tồn tối đa:";
            numValue.Minimum = 1;
            numValue.Maximum = 10000;
            numValue.Increment = 1;
            numValue.DecimalPlaces = 0;

            numValue.Value = (decimal)thamSo.SLTon;
        }

        private void btnQuayLai_Click(object sender, EventArgs e)
        {
            this.Dispose();
        }

        private void btnThemLoaiMH_Click(object sender, EventArgs e)
        {
            SetThamSo((int)numValue.Value);
            this.Dispose();
        }

        private void numValue_ValueChanged(object sender, EventArgs e)
        {
            btnCapNhat.Enabled = true;
        }
    }
}
